These disk images contain the Apple II type-in programs from Compute! Magazine, Issues 71-75. The programs included are listed below. All programs are both DOS and ProDOS unless indicated with [D] for DOS-only or [P] for ProDOS-only.

#71: Tug-a-War, Mousify Your Apple II Programs (Part 2), Apple Disk Duper [P], Hi-Res Graphics Aid Routines
#72: Hickory, Dickory, Dock; Applesoft List Enhancer; Better Branching in Applesoft; Upgrading the ESCape Key
#73: Miami Ice, Automatic Typist, ProDOS File Converter for Apple SpeedScript [P]
#74: Hex War, Apple ProDOS Catalog Sorter [P]
#75: Tightrope, Guardian Angel for Apple DOS 3.3 [D], Apple ProDOS Protector [P], DCONVERT/DHGRSAVE
plus Proofreader and MLX

For more documentation, instructions, and commentary, read on!

========================
Compute Type-In Programs

      Issues 71-75
   April- August 1986
========================

COMPUTE! magazine is a classic computing magazine which, in its heyday, published a variety of type-in programs for the Commodore 64/128, Apple II, Atari 400/800, IBM PC, and other 8-bit platforms. Typically each month's issue would feature a game, which was available on most of the supported platforms, and a variety of utilities. I recently discovered that archive.org has scans of all of the COMPUTE! back issues and decided to type in the programs there.

These disk images contain all of the Apple II type-in programs for five issues (71-75). There are two, one DOS 3.3 disk and one ProDOS 1.1.1 disk. These are mostly identical, although there are a few programs which only work under one OS or the other, and so are omitted from the other disk. On the ProDOS disk, I've also sorted the separate issues into their own subdirectories. Filenames may also be slightly different between the DOS 3.3 and ProDOS versions due to the stricter ProDOS naming restrictions.

Each disk includes a menu program which will allow you to select and run the main programs of interest. However, each disk includes many files which are not designed to be run directly (for instance, binary files loaded in by another program, or BASIC files which exist only to make binary files). This listing includes information on all programs on the disk.

I've also included, for each program, a very brief summary of its function and how to use it, but for full details, please consult the original article.

Why am I typing in these nearly 30-year-old programs? Well, it's mostly because I enjoyed doing this as a kid, and I'd like to make sure that these are preserved for the future.

Note that I created these disks using an emulator (mostly AppleWin, although I also tried using MESS for some checks). If you're not lucky enough to still have a functional Apple II around, you'll also need an emulator -- I recommend AppleWin for Windows users, and have heard good things about Virtual ][ for Macs.
 -- Paul Lujan, September 2014

==================
Programs and Notes
==================

First there is HELLO (STARTUP for ProDOS), which is the main menu program.

The next two programs are PROOFREADER and MLX, which were included in most COMPUTE! issues.

PROOFREADER is the Automatic Proofreader, which was included in all COMPUTE! issues starting with #62. It displays a checksum whenever you type in a BASIC line, which can be compared with the printed value to check that you had entered it correctly.

MLX is the Apple machine language entry program, which allowed you to conveniently enter ML listings in hexadecimal form. The printed listings included an extra checksum byte, which the program would check against the computed checksum to make sure the line had been entered correctly. Note that the version here is not quite the one printed in the magazine -- see the detailed notes at the end.

---------------------
Issue 71 (April 1986)
---------------------
archive.org link: https://archive.org/details/1986-04-compute-magazine

This contains the following programs:

* p. 42: Tug-a-War, by Mark Tuttle; Apple II version by Tim Victor (DOS and ProDOS)
  https://archive.org/stream/1986-04-compute-magazine/Compute_Issue_071_1986_Apr#page/n43/mode/2up

Tug-a-War is a two-player strategy game, in which the object is to get the ball into your home area. Use 1-0 or A to select a box. This will change the color of the box and all other boxes between your home and that box, according to the sequence at the top of the screen. If the box that the ball is on changes color, the ball also moves the direction and amount shown corresponding to that color. RUN TUG-A-WAR (TUGAWAR in ProDOS) to play. 

* p. 74: Mousify Your Apple II Programs (Part 2), by Lee Swoboda (DOS and ProDOS)
  https://archive.org/stream/1986-04-compute-magazine/Compute_Issue_071_1986_Apr#page/n75/mode/2up

This is a demo program showing how to add mouse functionality, including selection, copy, and paste to Applesoft BASIC routines. There are six files:
 MOUSIFY is the main demo program for demonstrating the mouse routines. RUN it to try.
 MOUSEY.MAKE is a BASIC helper program to make the MOUSEY binary file.
 MOUSEY is a binary file containing some ML routines loaded in by MOUSIFY.
 TEXT.MAKE is a BASIC helper program to make the demo text file for MOUSIFY.
 TEXT is the demo text file that MOUSIFY loads for its example.
 MOUSIFY.JOY is a version of MOUSIFY for use with the joystick rather than the mouse.

* p. 86: Apple Disk Duper, by Jason Coleman (ProDOS only)
  https://archive.org/stream/1986-04-compute-magazine/Compute_Issue_071_1986_Apr#page/n87/mode/2up

This is a simple ProDOS utility which can quickly make copies of either DOS 3.3 or ProDOS disks. RUN DISKDUPER to use it. 128k RAM is required.

* p. 102: Hi-Res Graphics Aid Routines, by Jon Hylands (DOS and ProDOS)
  https://archive.org/stream/1986-04-compute-magazine/Compute_Issue_071_1986_Apr#page/n103/mode/2up

This is a collection of utilities for working with the hi-res graphics screens, allowing operations such as inverting, superposition, and so forth. RUN HI-RES AID (HIRESAID in ProDOS) to use.

-------------------
Issue 72 (May 1986)
-------------------
archive.org link: https://archive.org/details/1986-05-compute-magazine

This contains the following programs:

* p. 36: Hickory, Dickory, Dock, by Barbara H. Schulak; Apple II version by Tim Victor (DOS and ProDOS)
  https://archive.org/stream/1986-05-compute-magazine/Compute_Issue_072_1986_May#page/n37/mode/2up

Hickory, Dickory, Dock is an educational program to teach children how to tell time on a standard clock face. RUN HICKORY to play, choose a game mode, and then try to match the given time.

* p. 72: Applesoft List Enhancer, by Steven Roth (DOS and ProDOS)
  https://archive.org/stream/1986-05-compute-magazine/Compute_Issue_072_1986_May#page/n73/mode/2up

This is a simple utility which allows you to LIST programs so that the listing appears one screenful at a time, instead of continuously scrolling. There are two files:
 ALE.MAKE is a BASIC program which makes the binary file ALE.
 ALE is the actual binary file. BRUN ALE to install it. Then you can use & or & [line] to activate the enhanced listing. Use the arrow keys to page forward or backward.

* p. 75: Better Branching in Applesoft, by Mark Russinovich (DOS and ProDOS)
  https://archive.org/stream/1986-05-compute-magazine/Compute_Issue_072_1986_May#page/n75/mode/2up

This utility adds computed GOTO and GOSUB (i.e., where the line number is not a constant but can be an expression) as well as the ability to RESTORE to a particular line number. There are three files:
 APLENH.MAKE is a BASIC program which makes the binary file APPLE.ENHANCER.
 APPLE.ENHANCER is the actual binary file. BRUN APPLE.ENHANCER to install it. This adds the commands & GOTO, & GOSUB, and & RESTORE to your session.
 APLENH.DEMO is a simple BASIC program to demonstrate the enhanced functionality.

* p. 93: Upgrading the Apple ESCape Key, by Robert Jacques Beck (DOS and ProDOS)
  https://archive.org/stream/1986-05-compute-magazine/Compute_Issue_072_1986_May#page/n93/mode/2up

This is a demo program demonstrating a simple machine language routine which allows ESCape to immediately perform another function when the computer is waiting for input. RUN ESC UPGRADE (ESC.UPGRADE in ProDOS) to see this sample routine in action.

* The reader feedback section (p. 12) also contains a short snippet demonstrating how to read Open Apple and Closed Apple key combinations. Since this is not really useful on its own, I haven't typed it in, but it may be useful for reference.
https://archive.org/stream/1986-05-compute-magazine/Compute_Issue_072_1986_May#page/n13/mode/2up

--------------------
Issue 73 (June 1986)
--------------------
archive.org link: https://archive.org/details/1986-06-compute-magazine

This issue contains the following programs:

* p. 34: Miami Ice, by Jeff Kulczycki; Apple II version by Tim Victor (DOS and ProDOS)
  https://archive.org/stream/1986-06-compute-magazine/Compute_Issue_073_1986_Jun#page/n35/mode/2up

Miami Ice is a single-player action game. BRUN MIAMI ICE (or MIAMI.ICE in ProDOS) to play. Use the joystick (or paddles) to steer and the button to accelerate. Use the button at the opening screen to select which level to play.

* p. 94: Automatic Typist: Using Apple Exec Files, by Mike Miyake (DOS and ProDOS)
  https://archive.org/stream/1986-06-compute-magazine/Compute_Issue_073_1986_Jun#page/n93/mode/2up

This article shows you how to use a program to create text files containing useful BASIC statements which then can be used from DOS with EXEC. This allows you to perform useful functions without needing to load a new program into memory. There are the following files:
 EXEC FILE MAKER (EXECFILE.MAKER in ProDOS). This BASIC program is not very useful in itself -- it is just  the wrapper which can be used to create other files, such as the next three files, which can be run using EXEC <filename>.
 COLOR CHART (COLOR.CHART in ProDOS). This will display a lo-res color chart.
 LAST BLOAD (DOS 3.3 only). This will display the location and length of the last file BLOADed.
 MEMORY MAP (MEMORY.MAP in ProDOS). This will display the current allocation of memory.

* p. 101: ProDOS File Converter for Apple SpeedScript, by Leh-Wen Yau (ProDOS only)
  https://archive.org/stream/1986-06-compute-magazine/Compute_Issue_073_1986_Jun#page/n99/mode/2up

This is an improvement over the original SpeedScript file converter which uses a machine-language routine to speed up the actual conversion process. RUN SS.CONVERTER to do the actual conversion. There are three files:
 SSCONVERT.MAKE, a BASIC file to make the machine language file SS.CONVERT
 SS.CONVERT, the machine language file used by the converter
 SS.CONVERTER, the actual converter

* The reader feedback (p. 11-12) also contains a short snippet with instructions for having the Proofreader output its checksum in regular characters rather than inverse. In case you need it, here it is:
https://archive.org/stream/1986-06-compute-magazine/Compute_Issue_073_1986_Jun#page/n13/mode/2up

--------------------
Issue 74 (July 1986)
--------------------
archive.org link: https://archive.org/details/1986-07-compute-magazine

This issue contains the following programs:

* p. 36: Hex War, by Todd Heimarck; Apple II version by Tim Victor (DOS and ProDOS)
  https://archive.org/stream/1986-07-compute-magazine/Compute_Issue_074_1986_Jul#page/n37/mode/2up
[includes corrections from CAPUTE! in Issue #77: see https://archive.org/stream/1986-10-compute-magazine/Compute_Issue_077_1986_Oct#page/n111/mode/2up ]

Hex War is a two-player strategy game. RUN HEX WAR (HEX.WAR for ProDOS) to play. Use ,. and the left and right arrows to move around the map, Space to select a unit and the hexes to move it to or through, and Return to end your move without moving all of your armies. The article also includes suggestions on customizing the game to your own liking.

* p. 96: Apple ProDOS Catalog Sorter, by William J. Coohan (ProDOS only)
  https://archive.org/stream/1986-07-compute-magazine/Compute_Issue_074_1986_Jul#page/n97/mode/2up
[includes corrections and improvements from CAPUTE! in Issue #76: see https://archive.org/stream/1986-09-compute-magazine/Compute_Issue_076_1986_Sep#page/n117/mode/2up ]

This utility provides a sorted catalog of a ProDOS disk and all of its subdirectories. There are three different BASIC programs:
 CAT.SORT is the original program.
 CAT.SORT.40COL is a version for a 40-column display (including the corrections in CAPUTE! #76).
 CAT.SORT.TYPE is a version which sorts by type and name (using the suggestion in CAPUTE! #76).

* The reader feedback section (p. 14-15) also includes some directions on changing the RESET vector. Since this is simply a snippet intended for including in a larger program, I haven't included it here, but for reference here is the location:
https://archive.org/stream/1986-07-compute-magazine/Compute_Issue_074_1986_Jul#page/n17/mode/2up

----------------------
Issue 75 (August 1986)
----------------------
archive.org link: https://archive.org/details/1986-08-compute-magazine

This issue contains the following programs:

* p. 38: Tightrope, by Daniel Aven; Apple II version by Tim Victor (DOS and ProDOS)
  https://archive.org/stream/1986-08-compute-magazine/Compute_Issue_075_1986_Aug#page/n39/mode/2up

Tightrope is a single-player action game. RUN TIGHTROPE to play. In "game" mode, use the joystick to balance yourself to make it across the rope. In "typing" mode, type the characters when they appear in order to keep your balance.

* p. 74: Guardian Angel for Apple DOS 3.3, by Boris Troyanovsky (DOS only)
  https://archive.org/stream/1986-08-compute-magazine/Compute_Issue_075_1986_Aug#page/n75/mode/2up

This utility allows you to create a copy-protected DOS 3.3 disk. To use it, RUN GUARDIAN and follow the directions. The original source disk will not be modified; the destination disk will be created as a copy-protected version of the source disk. There are five files:
 IOB, HTR.OBJ, HPREM.OBJ, and COPY.OBJ are machine-language files used by the main program.
 GUARDIAN is the main program; run it to start the copy-protection process.
NOTE: This program, because it messes around with how DOS works, may not work properly under emulation. See the notes below for a full discussion.

* p. 83: Apple ProDOS Protector, by Jason Coleman (ProDOS only)
  https://archive.org/stream/1986-08-compute-magazine/Compute_Issue_075_1986_Aug#page/n83/mode/2up

This utility allows you to create a protected ProDOS disk. There are three files, and in order to enable the protection, use these files as follows:
 LOAD PROT.CREATOR, insert the disk to protect, and run it.
 LOAD PROT.STARTUP and save it on the disk to protect, using the name you gave in the previous step.
 LOAD PROT.ENDUP and save it on the disk to protect, using the name ENDUP.

* In addition, the Reader Feedback section (p. 12-14) contains two useful programs, so I've also typed them in here.
  https://archive.org/stream/1986-08-compute-magazine/Compute_Issue_075_1986_Aug#page/n13/mode/2up

 DCONVERT.MAKE and DHGRSAVE.MAKE create the actual binary files DCONVERT and DHGRSAVE.
 BRUN DCONVERT to convert a normal hi-res picture on screen 1 into double hi-res.
 BRUN DHGRSAVE to convert a double hi-res picture into a single binary chunk which can be saved using BSAVE filename,A$2000,L$4000.

===================
Corrections & Notes
===================

While I've generally tried to match the printed listings exactly (including later corrections when appropriate), there are a few cases where I've made a few corrections of my own.

* In the first version of MLX (introduced in issue #61 with SpeedScript for Apple II), the line which saves the binary file (line 200) contains a bug: the length is calculated as (end - start) rather than the correct (end - start + 1). In most MLX programs this is harmless, since the last few bytes are just padding to make the program length an even multiple of 8. However, there are some cases where this causes problems. This was fixed in issue #88 (the first issue where MLX included Proofreader checksums), without any notice that anything had changed. Then, in issue #93 (just three issues before COMPUTE! ended type-in programs entirely), the version of MLX changed to "MLX V1.1". This introduced occasional garbage collection (which presumably helped out in very long typing sessions), but re-introduced the length bug!

So, the version here is a version which was never actually printed -- it combines the bug fix in the issue #88 version with the improvements in V1.1, so I've labeled it as V1.2.

* APLENH.MAKE (issue #72) contains the same off-by-one problem in its length. This is unlikely to matter, since the DATA ends with two zero bytes, but I've fixed it anyway, just in case.

* In ProDOS File Converter (#73), line 245 is left over from the original (non-accelerated) version. It should be harmless, but I've removed it anyway.

* The ending screen for Hex War (#74) shows up garbled. In AppleWin, it just shows a lot of flashing text but is OK when you press a key to continue. In MESS, the text appears as graphical characters and the program hangs. This appears to be because the program is using some special magic to draw text onto the hi-res screen which doesn't play well with these emulators.

* The filelengths for the four machine language files for Guardian Angel (#75) are also kind of strange. The length specified for IOB is one byte too short to contain all of the data listed, so I've increased it by one. HPREM.OBJ and COPY.OBJ are longer than the data listed -- I don't know why this is, but I've left it as is.

* Guardian Angel does not seem to play well with the emulators I've tried, presumably because it's doing some pretty low-level changes to DOS. In AppleWin, it crashes out at the initialization stage; in MESS, it successfully creates the destination disk (although it takes a very long time!), but the resulting disk doesn't appear to run correctly, nor can it be accessed by entering the access code. So, use this feature with caution.

===========
Other Disks
===========

There are a couple of other disks on the Asimov archive which also contain some of these programs: Typed-In Programs has Miami Ice, and the Compute Best of Apple disk has Tug-a-War, Hickory Dickory Dock, Miami Ice, and Hex War. I ran a quick diff to ensure that these were the same, and they all were identical, except for Hickory Dickory Dock, where the options are presented in a slightly different order in the Best of Apple disk than the Issue #72 listing. I'm not sure what causes this difference (or indeed where the Best of Apple disk comes from).